Recursive Data and Electronic Signature Document Updater

ABSTRACT

Aspects of the disclosure relate to computing hardware and software for performing uniform document updates. A computing platform may receive, from a user device, a document change request. The computing platform may authenticate authority of a user of the user device to perform the document change request. Based on authenticating the authority of the user of the user device to perform the document change request, the computing platform may identify storage locations at which documents that are affected by the document change request are located. The computing platform may access the documents at each of the storage locations. The computing platform may scan the documents to identify locations, within the documents, of changes to be made, which may include identifying the locations based on enterprise-adopted change tags. The computing platform may write the changes to the documents at the identified locations based on the enterprise-adopted change tags.

BACKGROUND

Aspects of the disclosure relate to computing hardware and software,particularly distributed computing hardware and software forsynchronizing document versions. When an electronic document isdownloaded to a particular network device (or a number of networkdevices), multiple versions of the electronic document may be created.For example, each download may result in a new copy of the electronicdocument. If changes to the document are needed, each version of thedocument must be revised accordingly to perform an enterprise wideupdate. This may be a time consuming and computationally expensiveprocess, which may ultimately be error prone due to the likelihood ofone or more versions of the document avoiding update (especially whenvarious versions of the document are stored at different locations).Accordingly, this may result in difficulties with version control acrossan enterprise. It is therefore important to identify a reliable methodfor automatically making such updates across all existing copies of adocument.

SUMMARY

Aspects of the disclosure provide effective, efficient, scalable, andconvenient technical solutions that address and overcome the technicalproblems associated with developing and implementing computer hardwareand software that automatically updates versions of a document, storedat different locations, based on a request to update the document. Inaccordance with one or more embodiments of the disclosure, a computingplatform comprising at least one processor, a communication interface,and memory storing computer-readable instructions may receive, from auser device, a document change request. The computing platform mayauthenticate authority of a user of the user device to perform thedocument change request. Based on authenticating the authority of theuser of the user device to perform the document change request, thecomputing platform may identify a plurality of storage locations atwhich documents that are affected by the document change request arelocated. The computing platform may access the documents at each of theplurality of storage locations. The computing platform may scan thedocuments to identify locations, within the documents, of changes to bemade, which may include identifying the locations based on one or moreenterprise-adopted change tags. The computing platform may write thechanges to the documents at the identified locations based on the one ormore enterprise-adopted change tags. The computing platform may embed,in the documents, a timestamp corresponding to implementation of thechanges and a signature of the user. The computing platform may send, tothe user device, a change notification, indicating that the documentchange request has been completed, and one or more commands directingthe user device to display the change notification, which may cause theuser device to display the change notification and informationassociated with the one or more enterprise-adopted change tags.

In one or more instances, the computing platform may store one or moreoriginal documents. The computing platform may embed, into the one ormore original documents, the one or more enterprise-adopted change tagsindicating portions of the one or more original documents to be modifiedupon receipt of each of a plurality of requested document changes.

In one or more instances, writing the changes to the documents mayinclude writing, to the one or more enterprise-adopted change tags oforiginal documents linked to the documents, the changes. In one or moreinstances, the document change request may indicate a particulardocument to be modified.

In one or more instances, the computing platform may identify theplurality of storage locations at which the documents that are affectedby the document change request are located by identifying storagelocations of available versions of the particular document. In one ormore instances, the document change request may indicate a particularchange to be made.

In one or more instances, identifying the plurality of storage locationsat which the documents that are affected by the document change requestare located may include identifying documents including information tobe changed based on the particular change. In one or more instances, thecomputing platform may identify, based on enterprise information,additional changes to be made, which may further be based on theadditional changes.

In one or more instances, the enterprise information may indicate one ormore of: an enterprise policy change, an enterprise name change, or achange in enterprise personnel. In one or more instances, the computingplatform may lock, while the changes are being written to the documentsat the identified locations based on the one or more enterprise-adoptedchange tags, the documents for editing.

These features, along with many others, are discussed in greater detailbelow.

BRIEF DESCRIPTION OF THE DRAWINGS

The present disclosure is illustrated by way of example and not limitedin the accompanying figures in which like reference numerals indicatesimilar elements and in which:

FIGS. 1A-1B depict an illustrative computing environment configured toperform recursive data and electronic signature updates to documents inaccordance with one or more example embodiments;

FIGS. 2A-2E depict an illustrative event sequence for performingrecursive data and electronic signature updates to documents inaccordance with one or more example embodiments;

FIG. 3 depicts an illustrative method for performing recursive data andelectronic signature updates to documents in accordance with one or moreexample embodiments; and

FIG. 4 depicts an illustrative graphical user interface for performingrecursive data and electronic signature updates to documents inaccordance with one or more example embodiments.

DETAILED DESCRIPTION

In the following description of various illustrative embodiments,reference is made to the accompanying drawings, which form a parthereof, and in which is shown, by way of illustration, variousembodiments in which aspects of the disclosure may be practiced. In someinstances, other embodiments may be utilized, and structural andfunctional modifications may be made, without departing from the scopeof the present disclosure.

It is noted that various connections between elements are discussed inthe following description. It is noted that these connections aregeneral and, unless specified otherwise, may be direct or indirect,wired or wireless, and that the specification is not intended to belimiting in this respect.

As a brief introduction to the concepts described further herein, one ormore aspects of the disclosure relate to an improved process for writingchanges throughout multiple documents at various storage locations. Forexample, currently, there is no efficient and effective automatedsolution for updating, changing, correcting, and/or otherwise editingdocuments, playbooks, and/or other files across an enterprise (whichmay, e.g., be located in various different storage locations). Therecursive data and electronic signature updater may search a completerepository of all documents and make necessary changes to ensurecompliance, accuracy, and standardization across the enterprise. Forexample, an enterprise may change its name and/or logo. Additionally oralternatively, a legal or regulatory change may require consistentupdates in enterprise materials stored across various systems anddatabases. In these instances, the recursive updater may change alldocuments to reflect the change(s). In some instances, the recursiveupdated may change only tagged or otherwise linked documents.

As another example, changes may be made to a playbook or proceduresmanual. The updater may fix all copies of the playbook/procedure’smanual and affix a date/time stamp in the appropriate section. In someinstances, the updater may also append an electronic signature of theperson who initiated the update. In some instances, individuals may optinto such updates.

As yet another example, information may be added to a document thatchanges the document’s overall classification. In these instances, theupdater may correct the header/footer data and/or a controlling slide.

In some instances, pictures may be updated and/or formatted in additionor as an alternative to text. In some instances, a document may belocked and/or markers indicating that the document should not be changedmay be inserted during editing. In one or more instances, notificationsmay be sent to a document owner to assist with version control.

In some instances, template changes, logos, and/or other objects may beformatted to account for copy/pasting documents together.

In some instances, in the case of third party contracts, acquisitions,spin-offs, and/or other enterprise organizational changes, enterpriseinformation may be updated throughout any affected documents.Furthermore, all terms and conditions may be updated accordingly,including flagging terms and/or conditions that might not apply as aresult of the update(s). As a specific example, company X may have apatent contract with company Y, where companies X and Y licensed eachother their patents. Now, company Y may acquire company Z, which mightnot have had any original licensing contract with company X. As a resultof this change in company Z (as part of company Y now), vulnerabilitiesmay be identified with regard to the patent contract with company X.

Accordingly, described herein is an enterprise document update crawlerfor all copies of a document to ensure compliance, accuracy, andstandardization regardless of where the document resides on the network.

These and other features are described in further detail below.

FIGS. 1A-1B depict an illustrative computing environment that performsrecursive data and electronic signature updates to documents inaccordance with one or more example embodiments. Referring to FIG. 1A,computing environment 100 may include one or more computer systems. Forexample, computing environment 100 may include recursive data managementplatform 102, first data storage system 103, second data storage system104, user device 105, and enterprise user device 106.

As described further below, recursive data management platform 102 maybe a computer system that includes one or more computing devices (e.g.,servers, server blades, or the like) and/or other computer components(e.g., processors, memories, communication interfaces) that may be usedto recursively identify documents to be updated and write the updates tothe documents accordingly. In some instances, the recursive datamanagement platform 102 may be integrated into a user device orotherwise integrated into a peer-to-peer network.

First data storage system 103 may be one or more computing devices(e.g., servers, server blades, laptop computers, desktop computers,mobile devices, tablets, smartphones, servers, and/or other devicesconfigured for document storage). In some instances, the first datastorage system 103 may be configured to store documents for subsequentaccess (e.g., by an enterprise employee or other individual).

Second data storage system 104 may be one or more computing devices(e.g., servers, server blades, laptop computers, desktop computers,mobile devices, tablets, smartphones, servers, and/or other devicesconfigured for document storage). In some instances, the second datastorage system 104 may be configured to store documents for subsequentaccess (e.g., by an enterprise employee or other individual).

User device 105 may be a laptop computer, desktop computer, mobiledevice, tablet, smartphone, wearable device, and/or other device thatmay be used by an individual (such as an employee of an enterpriseorganization) to access documents and/or request changes to thedocuments. In some instances, user device 105 may be configured todisplay one or more user interfaces (e.g., document modificationinterfaces, change notification interfaces, or the like).

Enterprise user device 106 may be a laptop computer, desktop computer,mobile device, tablet, smartphone, wearable device, and/or other devicethat may be used by an individual (such as a network administrator orsecurity analyst of an enterprise organization) to access a log ofdocument modifications (e.g., to identify unauthorized modifications).In some instances, enterprise user device 106 may be configured todisplay one or more user interfaces (e.g., change notificationinterfaces, or the like).

Computing environment 100 also may include one or more networks, whichmay interconnect recursive data management platform 102, first datastorage system 103, second data storage system 104, user device 105,and/or enterprise user device 106. For example, computing environment100 may include a network 101 (which may interconnect, e.g., recursivedata management platform 102, first data storage system 103, second datastorage system 104, user device 105, and/or enterprise user device 106).

In one or more arrangements, recursive data management platform 102,first data storage system 103, second data storage system 104, userdevice 105, and/or enterprise user device 106 may be any type ofcomputing device capable of sending and/or receiving requests andprocessing the requests accordingly. For example, recursive datamanagement platform 102, first data storage system 103, second datastorage system 104, user device 105, enterprise user device 106, and/orthe other systems included in computing environment 100 may, in someinstances, be and/or include server computers, desktop computers, laptopcomputers, tablet computers, smart phones, or the like that may includeone or more processors, memories, communication interfaces, storagedevices, and/or other components. As noted above, and as illustrated ingreater detail below, any and/or all of recursive data managementplatform 102, first data storage system 103, second data storage system104, user device 105, and/or enterprise user device 106 may, in someinstances, be special-purpose computing devices configured to performspecific functions.

Referring to FIG. 1B, recursive data management platform 102 may includeone or more processors 111, memory 112, and communication interface 113.A data bus may interconnect processor 111, memory 112, and communicationinterface 113. Communication interface 113 may be a network interfaceconfigured to support communication between recursive data managementplatform 102 and one or more networks (e.g., network 101, or the like).Memory 112 may include one or more program modules having instructionsthat when executed by processor 111 cause recursive data managementplatform 102 to perform one or more functions described herein and/orone or more databases that may store and/or otherwise maintaininformation which may be used by such program modules and/or processor111. In some instances, the one or more program modules and/or databasesmay be stored by and/or maintained in different memory units ofrecursive data management platform 102 and/or by different computingdevices that may form and/or otherwise make up recursive data managementplatform 102. For example, memory 112 may have, host, store, and/orinclude recursive data management module 112 a and/or recursive datamanagement database 112 b.

Recursive data management module 112 a may have instructions that directand/or cause recursive data management platform 102 to train, implement,and/or otherwise identify and update documents, as discussed in greaterdetail below. Recursive data management database 112 b may storeinformation used by recursive data management module 112 a and/orrecursive data management platform 102 in application of advancedtechniques to identify documents to be updated, write the updates to thedocuments, and/or in performing other functions.

FIGS. 2A-2E depict an illustrative event sequence for performingrecursive data and electronic signature updates to documents inaccordance with one or more example embodiments. Referring to FIG. 2A,at step 201, the recursive data management platform 102 may store one ormore original documents. For example, the recursive data managementplatform 102 may store contracts, agreements, employee handbooks, and/orother documents for an enterprise organization. In some instances, instoring the one or more original documents, the recursive datamanagement platform 102 may embed, into the original documents, one ormore enterprise adopted change tags, pointers, and/or other indicatorsidentifying portions of the original documents that may be changed basedon certain input and/or other criteria.

At step 202, the recursive data management platform 102 may establishwired and/or wireless data connections with the first data storagesystem 103 and/or the second data storage system 104. For example, therecursive data management platform 102 may establish first and/or secondwired and/or wireless data connections with the first data storagesystem 103 and/or the second data storage system 104 to link therecursive data management platform 102 to the first data storage system103 and/or the second data storage system 104 (e.g., in preparation forsending versions of the one or more original documents). In someinstances, the recursive data management platform 102 may identifywhether or not a connection is already established with the first datastorage system 103 and/or the second data storage system 104. If aconnection is already established with the first data storage system 103and/or the second data storage system 104, the recursive data managementplatform 102 might not re-establish the connection. If a connection isnot yet established with the first data storage system 103 and/or thesecond data storage system 104, the recursive data management platform102 may establish the first and/or second wireless data connection asdescribed herein.

At step 203, the recursive data management platform 102 may send the oneor more versions of the one or more original documents to the first datastorage system 103 and/or the second data storage system 104. Forexample, the recursive data management platform 102 may send the one ormore versions of the one or more original documents to the first datastorage system 103 and/or the second data storage system 104 via thecommunication interface 113 and while the first and/or second wiredand/or wireless data connections are established.

At step 204, first data storage system 103 and/or second data storagesystem 104 may receive the one or more versions of the one or moreoriginal documents sent at step 203. For example, the first data storagesystem 103 and/or second data storage system 104 may receive the one ormore versions of the one or more original documents while the firstand/or second wired and/or wireless data connections are established.

At step 205, first data storage system 103 and/or the second datastorage system 104 may store the one or more versions of the one or moreoriginal documents received at step 204. For example, the first datastorage system 103 and/or the second data storage system 104 may storethe one or more versions of the one or more original documents alongwith the one or more enterprise adopted change tags, pointers, and/orother indicators identifying portions of the original documents that maybe changed based on certain input and/or other criteria. In doing so,the first data storage system 103 and/or the second data storage system104 may configure the one or more versions of the one or more originaldocuments to update in a manner corresponding to any updates, changes,or modifications made to the one or more original documents.

Referring to FIG. 2B, at step 206, the recursive data managementplatform 102 may establish a connection with the user device 105. Forexample, the recursive data management platform 102 may establish athird wireless data connection with the user device 105 to link therecursive data management platform 102 to the user device 105 (e.g., inpreparation for sending/receiving document update requests). In someinstances, the recursive data management platform 102 may identifywhether or not a connection is already established with the user device105. If a connection is already established, the recursive datamanagement platform 102 might not re-establish the connection. If aconnection is not yet established with the user device 105, therecursive data management platform 102 may establish the third wirelessdata connection as described herein.

At step 207, the user device 105 may send a document update request tothe recursive data management platform 102. For example, the user device105 may send a request to the recursive data management platform 102 tomodify, update, or otherwise change one of the original documents. Insome instances, the user device 105 may send a request to update aparticular document (and any corresponding versions of that particulardocument). Additionally or alternatively, the user device 105 may send arequest to implement a particular change (e.g., change the name of anentity, remove an individual who is no longer employed by theenterprise, add the name of a new employee, and/or other changes), andmight not specify a particular document that should be editedaccordingly. In some instances, the user device 105 may send thedocument update request while the third wireless data connection isestablished.

At step 208, the recursive data management platform 102 may receive thedocument update request sent at step 207. For example, the recursivedata management platform 102 may receive the document update request viathe communication interface 113 and while the third wireless dataconnection is established.

At step 209, the recursive data management platform 102 may authenticatean authority of a user of the user device 105 to identify whether or notthe user has authority to make the requested change. For example, therecursive data management platform 102 may identify access and/or editpermissions corresponding to the user device 105 and/or an account forthe user, and may compare the requested change to what is authorized. Insome instances, the recursive data management platform 102 may identifythat the user is authorized to make certain changes within a document,but not others. In other instances, the recursive data managementplatform 102 may identify that the user is either fully authorized toedit a document, or fully prohibited from doing so. If the recursivedata management platform 102 identifies that the user is not authorizedto make the requested change, the event sequence may end. If instead,the recursive data management platform 102 identifies that the user isauthorized to make the requested change, the recursive data managementplatform 102 may proceed to step 210.

In some instances, in addition or as an alternative to authenticatingthe user based on their credentials, the recursive data managementplatform 102 may identify whether any documents, for which a change isrequested, are tagged as sensitive or otherwise unalterable. If anattempt to edit such a document is made, the recursive data managementplatform 102 may identify that the user is not authenticated to make therequested change.

In some instances, the recursive data management platform 102 mayidentify a type of changes that the user is authorized to make to anyrequested documents (e.g., substantive, cosmetic, and/or other changes).The recursive data management platform 102 may identify, in part,whether the user is authorized to make the requested changes based onthese edit permissions.

In some instances, if the recursive data management platform 102identifies that the user is not authorized to make the requested change,the recursive data management platform 102 may send a notification to anenterprise user device (e.g., enterprise user device 106) indicatingthat an unauthorized document modification request was made.

At step 210, the recursive data management platform 102 may identify oneor more versions of the original documents, stored at the first datastorage system 103 and/or the second data storage system 104, whichshould be changed in response to the requested change. For example, therecursive data management platform 102 may identify any existingversions of a document specified in the document update request (e.g.,identify storage locations of existing versions). Additionally oralternatively, the recursive data management platform 102 may identifyany documents affected by a requested change, and may identify thecorresponding versions of those documents. In some instances,identifying the documents may include identifying documents stored at aplurality of different locations (e.g., first data storage system 103,second data storage system 104, and/or other data storage systems suchas databases, drives, shared drivers, or the like).

In some instances, the recursive data management platform 102 mayidentify a number of documents that will be changed based on thedocument update request, and may notify the user prior to executing theupdate. For example, the recursive data management platform 102 may senda notification to the user device 105 that includes the number ofaffected documents and requests confirmation that the update should bemade (e.g., the user might not want to implement a change if anunanticipated number of other documents will be affected as a result).In some instances, the recursive data management platform 102 may sendthis notification if the number of affected documents is equal to orexceeds a predetermined threshold, and might not send the notificationif the number of affected documents does not exceed the threshold.

Referring to FIG. 2C, at step 211, the recursive data managementplatform 102 may retrieve or otherwise access the documents identifiedat step 210. For example, in some instances, the recursive datamanagement platform 102 may access the documents in their variousstorage locations across the first data storage system 103, second datastorage system 104, and/or other storage locations. In other instances,the recursive data management platform 102 may retrieve the documentsfrom their various storage locations for editing at the recursive datamanagement platform 102.

At step 212, the recursive data management platform 102 may identifydocument changes to be made within each of the identified documents. Forexample, the recursive data management platform 102 may identifydocument changes specified in the document update request and/or anycorresponding changes (e.g., implementation of one change may inspireother changes or otherwise impact the document). For example, therecursive data management platform 102 may identify that, based on therequested changes, a classification of a particular document may bechanged (e.g., from non-confidential, confidential, proprietary, orother classification change) and the header/footer (or other section) ofa particular document should also be updated accordingly to reflect theupdated classification. To do so, the recursive data management platform102 may scan each of the identified documents to identify locations ofone or more enterprise-adopted change tags or pointers indicating aportion (e.g., a name, a word, a paragraph, or other portion of thedocument) of the document to update. In these instances, the recursivedata management platform 102 may maintain an index that indicatesportions of each of the original documents to be updated, which maye.g., include links between the original document and the versions ofthe original document stored at various other sources. In someinstances, the recursive data management platform 102 may periodicallyupdate this index. In some instances, the recursive data managementplatform 102 may perform a lookup function (e.g., based on a name, asignature, keywords, a file hash, key numbers for a paragraph or otherportion of a document, hypertext, and/or other identifiers), wordsearch, or other comparison method to identify particular words to bechanged.

In some instances, in addition to identifying documents and changesbased on the document update request as described above, the recursivedata management platform 102 may automatically identify additional oralternative changes to be made based on changes in enterpriseinformation (e.g., an enterprise policy change, an enterprise namechange, a change in enterprise personnel, and/or other enterpriseinformation). For example, an enterprise may experience a merger oracquisition, which may result in changing of such enterpriseinformation. In these instances, the recursive data management platform102 may identify original documents that include the enterpriseinformation and all corresponding versions of these affected documents(and their corresponding locations), and portions of the versions of theaffected documents to be changed (e.g., based on tags, pointers,lookups, or other methods).

In some instances, the recursive data management platform 102 mayidentify that one or more images, template changes, logos, and/or otherdocument features should be updated or formatted based on the requestedchange

At step 213, the recursive data management platform 102 may write thechanges, identified at step 212, to the accessed documents. In someinstances, the recursive data management platform 102 may lock theaccessed documents for editing while changes are being written. In someinstances, the recursive data management platform 102 may write thechanges to the original versions of the accessed documents, which maycause the changes to proliferate throughout the other versions of thecorresponding documents based on the one or more enterprise adoptedchange tags, pointers, and/or other indicators identifying portions ofthe original documents that may be changed (e.g., the recursive datamanagement platform 102 may write the changes to the one or moreenterprise-adopted change tags within the original documents). In someinstances, the recursive data management platform 102 may perform alookup function, word search, or other comparison method to identifyparticular words to be changed. For example, the recursive datamanagement platform 102 may use these tags as links between the originaldocuments and the corresponding versions now stored at other locations,which may cause any updates made to the original document toautomatically be further made at the other document versions.Additionally or alternatively, the recursive data management platform102 may cause the versions of the accessed documents to be deleted fromthe first data storage system 103, second data storage system 104,and/or other storage systems. In these instances, the recursive datamanagement platform 102 may update the original versions of the accesseddocuments, and subsequently push out the updated versions to the firstdata storage system 103, second data storage system 104, and/or anyother storage locations (e.g., effectively replacing the old versions ofthe documents rather than modifying them directly as described above).

At step 214, the recursive data management platform 102 may embed asignature of the user and/or a timestamp indicating when the change waswritten into the accessed documents. In doing so, the recursive datamanagement platform 102 may maintain a log of who made what changes andwhen, which may be advantageous in the event of any malicious orunauthorized attempts to alter enterprise documents.

Referring to FIG. 2D, at step 215, if the documents were updated at therecursive data management platform 102 (or otherwise removed from thefirst data storage system 103, second data storage system 104, or otherstorage system), the recursive data management platform 102 may providethe updated documents to the first data storage system 103 and/or thesecond data storage system 104 (e.g., to replace old versions of thedocuments with new versions, updated based on the document updaterequest).

At step 216, the recursive data management platform 102 may generate achange notification indicating that the requested document update hasbeen performed and identifying any modified documents/correspondingmodifications. At step 217, the recursive data management platform 102may send the change notification to the user device 105. For example,the recursive data management platform 102 may send the changenotification to the user device 105 via the communication interface 113and while the third wireless data connection is established. In someinstances, the recursive data management platform 102 may also send oneor more commands directing the user device 105 to display the changenotification.

At step 218, the user device 105 may receive the change notificationsent at step 217. For example, the user device 105 may receive thechange notification while the third wireless data connection isestablished. In some instances, the user device 105 may also receive theone or more commands directing the user device 105 to display the changenotification.

At step 219, based on or in response to the one or more commandsdirecting the user device 105 to display the change notification, theuser device 105 may display the change notification. For example, theuser device 105 may display a graphical user interface similar tographical user interface 405, which is illustrated in FIG. 4 , and thatidentifies the modified documents.

Referring to FIG. 2E, at step 220, the recursive data managementplatform 102 may establish a connection with the enterprise user device106. For example, the recursive data management platform 102 mayidentify any relevant individuals and/or devices that should be notifiedof the document updates based on the content of the updates, the contextof the updated documents, and/or otherwise should be notified (e.g., anetwork security administrator, security analyst, attorney, complianceanalyst, and/or other enterprise employee). In some instances, therecursive data management platform 102 may establish a fourth wirelessdata connection with the enterprise user device 106 to link therecursive data management platform 102 with the enterprise user device106 (e.g., in preparation for sending a change notification). In someinstances, the recursive data management platform 102 may identifywhether or not a connection is already established with the enterpriseuser device 106. If a connection is established with the enterprise userdevice 106, the recursive data management platform 102 might notre-establish the connection. If a connection is not yet established withthe enterprise user device 106, the recursive data management platform102 may establish the fourth wireless data connection as describedherein.

At step 221, the recursive data management platform 102 may send achange notification (which may e.g., be the same notification or adifferent notification than the notification sent at step 217) to theenterprise user device 106. For example, the recursive data managementplatform 102 may send the change notification to the enterprise userdevice 106 via the communication interface 113 and while the fourthwireless data connection is established. In some instances, therecursive data management platform 102 may also send one or morecommands directing the enterprise user device 106 to display the changenotification.

At step 222, the enterprise user device 106 may receive the changenotification sent at step 221. For example, the enterprise user device106 may receive the change notification while the fourth wireless dataconnection is established. In some instances, the enterprise user device106 may also receive the one or more commands directing the enterpriseuser device 106 to display the change notification.

At step 223, based on or in response to the one or more commandsdirecting the enterprise user device 106 to display the changenotification, the enterprise user device 106 may display the changenotification. For example, the enterprise user device 106 may display agraphical user interface similar to graphical user interface 405, whichis shown in FIG. 4 .

Although a first data storage system 103 and second data storage system104 are described above, this is for illustrative purposes only, and anynumber of data storage systems may be deployed in the methods describedabove without departing from the scope of this disclosure. Furthermore,although the recursive data management platform 102 is described as aserver separate from the user devices, in some instances, the methodsdescribed above may be deployed in a peer-to-peer fashion, where theservices provided by the recursive data management platform 102 asdescribed above may be performed by a user device (e.g., user device105, enterprise user device 106, or other user device).

FIG. 3 depicts an illustrative method for performing recursive data andelectronic signature updates to documents in accordance with one or moreexample embodiments. Referring to FIG. 3 , at step 305, a computingplatform having at least one processor, a communication interface, andmemory may store one or more original documents. At step 310, thecomputing platform may send versions of the one or more originaldocuments to various storage devices. At step 315, the computingplatform may receive a document update request. At step 320, thecomputing platform may identify whether or not the user requesting theupdate has authority to make the requested update. If the userrequesting the update does not have authority to make the requestedupdate, the document update request may be denied and the method mayend. If the user requesting the update does have authority to make therequested update, the computing platform may proceed to step 325 toidentify documents affected by the requested change. At step 330, thecomputing platform may access the identified documents. At step 335, thecomputing platform may identify changes to be made to the identifieddocuments. At step 340, the computing platform may write the identifiedchanges to the identified documents. At step 345, the computing platformmay generate and send change notifications indicating that the requestedupdate has been performed.

One or more aspects of the disclosure may be embodied in computer-usabledata or computer-executable instructions, such as in one or more programmodules, executed by one or more computers or other devices to performthe operations described herein. Generally, program modules includeroutines, programs, objects, components, data structures, and the likethat perform particular tasks or implement particular abstract datatypes when executed by one or more processors in a computer or otherdata processing device. The computer-executable instructions may bestored as computer-readable instructions on a computer-readable mediumsuch as a hard disk, optical disk, removable storage media, solid-statememory, RAM, and the like. The functionality of the program modules maybe combined or distributed as desired in various embodiments. Inaddition, the functionality may be embodied in whole or in part infirmware or hardware equivalents, such as integrated circuits,application-specific integrated circuits (ASICs), field programmablegate arrays (FPGA), and the like. Particular data structures may be usedto more effectively implement one or more aspects of the disclosure, andsuch data structures are contemplated to be within the scope of computerexecutable instructions and computer-usable data described herein.

Various aspects described herein may be embodied as a method, anapparatus, or as one or more computer-readable media storingcomputer-executable instructions. Accordingly, those aspects may takethe form of an entirely hardware embodiment, an entirely softwareembodiment, an entirely firmware embodiment, or an embodiment combiningsoftware, hardware, and firmware aspects in any combination. Inaddition, various signals representing data or events as describedherein may be transferred between a source and a destination in the formof light or electromagnetic waves traveling through signal-conductingmedia such as metal wires, optical fibers, or wireless transmissionmedia (e.g., air or space). In general, the one or morecomputer-readable media may be and/or include one or more non-transitorycomputer-readable media.

As described herein, the various methods and acts may be operativeacross one or more computing servers and one or more networks. Thefunctionality may be distributed in any manner, or may be located in asingle computing device (e.g., a server, a client computer, and thelike). For example, in alternative embodiments, one or more of thecomputing platforms discussed above may be combined into a singlecomputing platform, and the various functions of each computing platformmay be performed by the single computing platform. In such arrangements,any and/or all of the above-discussed communications between computingplatforms may correspond to data being accessed, moved, modified,updated, and/or otherwise used by the single computing platform.Additionally or alternatively, one or more of the computing platformsdiscussed above may be implemented in one or more virtual machines thatare provided by one or more physical computing devices. In sucharrangements, the various functions of each computing platform may beperformed by the one or more virtual machines, and any and/or all of theabove-discussed communications between computing platforms maycorrespond to data being accessed, moved, modified, updated, and/orotherwise used by the one or more virtual machines.

Aspects of the disclosure have been described in terms of illustrativeembodiments thereof. Numerous other embodiments, modifications, andvariations within the scope and spirit of the appended claims will occurto persons of ordinary skill in the art from a review of thisdisclosure. For example, one or more of the steps depicted in theillustrative figures may be performed in other than the recited order,and one or more depicted steps may be optional in accordance withaspects of the disclosure.

What is claimed is:
 1. A computing platform comprising: at least oneprocessor; a communication interface communicatively coupled to the atleast one processor; and memory storing computer-readable instructionsthat, when executed by the at least one processor, cause the computingplatform to: receive, from a user device, a document change request;authenticate authority of a user of the user device to perform thedocument change request; based on authenticating the authority of theuser of the user device to perform the document change request, identifya plurality of storage locations at which documents that are affected bythe document change request are located; access the documents at each ofthe plurality of storage locations; scan the documents to identifylocations, within the documents, of changes to be made, wherein scanningthe documents comprises identifying the locations based on one or moreenterprise-adopted change tags; write the changes to the documents atthe identified locations based on the one or more enterprise-adoptedchange tags; embed, in the documents, a timestamp corresponding toimplementation of the changes and a signature of the user; and send, tothe user device, a change notification, indicating that the documentchange request has been completed, and one or more commands directingthe user device to display the change notification, wherein sending theone or more commands directing the user device to display the changenotification causes the user device to display the change notificationand information associated with the one or more enterprise-adoptedchange tags.
 2. The computing platform of claim 1, wherein the memorystores additional computer-readable instructions that, when executed bythe at least one processor, cause the computing platform to: store oneor more original documents; and embed, into the one or more originaldocuments, the one or more enterprise-adopted change tags indicatingportions of the one or more original documents to be modified uponreceipt of each of a plurality of requested document changes.
 3. Thecomputing platform of claim 2, wherein writing the changes to thedocuments comprises writing to the one or more enterprise-adopted changetags of original documents linked to the documents, the changes.
 4. Thecomputing platform of claim 1, wherein the document change requestindicates a particular document to be modified.
 5. The computingplatform of claim 4, wherein identifying the plurality of storagelocations at which the documents that are affected by the documentchange request are located comprises identifying storage locations ofavailable versions of the particular document.
 6. The computing platformof claim 1, wherein the document change request indicates a particularchange to be made.
 7. The computing platform of claim 6, whereinidentifying the plurality of storage locations at which the documentsthat are affected by the document change request are located comprisesidentifying documents including information to be changed based on theparticular change.
 8. The computing platform of claim 1, wherein thememory stores additional computer-readable instructions that, whenexecuted by the at least one processor, cause the computing platform to:identify, based on enterprise information, additional changes to bemade, wherein identifying the plurality of storage locations at whichthe documents that are affected by the document change request arelocated is further based on the additional changes.
 9. The computingplatform of claim 8, wherein the enterprise information indicates one ormore of: an enterprise policy change, an enterprise name change, or achange in enterprise personnel.
 10. The computing platform of claim 1,wherein the memory stores additional computer-readable instructionsthat, when executed by the at least one processor, cause the computingplatform to: lock, while the changes are being written to the documentsat the identified locations based on the one or more enterprise-adoptedchange tags, the documents for editing.
 11. A method comprising: at acomputing platform comprising at least one processor, a communicationinterface, and memory: receiving, from a user device, a document changerequest; authenticating authority of a user of the user device toperform the document change request; based on authenticating theauthority of the user of the user device to perform the document changerequest, identifying a plurality of storage locations at which documentsthat are affected by the document change request are located; accessingthe documents at each of the plurality of storage locations; scanningthe documents to identify locations, within the documents, of changes tobe made, wherein scanning the documents comprises identifying thelocations based on one or more enterprise-adopted change tags; writingthe changes to the documents at the identified locations based on theone or more enterprise-adopted change tags; embedding, in the documents,a timestamp corresponding to implementation of the changes and asignature of the user; and sending, to the user device, a changenotification, indicating that the document change request has beencompleted, and one or more commands directing the user device to displaythe change notification, wherein sending the one or more commandsdirecting the user device to display the change notification causes theuser device to display the change notification and informationassociated with the one or more enterprise-adopted change tags.
 12. Themethod of claim 11, further comprising: storing one or more originaldocuments; and embedding, into the one or more original documents, theone or more enterprise-adopted change tags indicating portions of theone or more original documents to be modified upon receipt of each of aplurality of requested document changes.
 13. The method of claim 12,wherein writing the changes to the documents comprises writing to theone or more enterprise-adopted change tags of original documents linkedto the documents, the changes.
 14. The method of claim 11, wherein thedocument change request indicates a particular document to be modified.15. The method of claim 14, wherein identifying the plurality of storagelocations at which the documents that are affected by the documentchange request are located comprises identifying storage locations ofavailable versions of the particular document.
 16. The method of claim11, wherein the document change request indicates a particular change tobe made.
 17. The method of claim 16, wherein identifying the pluralityof storage locations at which the documents that are affected by thedocument change request are located comprises identifying documentsincluding information to be changed based on the particular change. 18.The method of claim 11, wherein the memory stores additionalcomputer-readable instructions that, when executed by the at least oneprocessor, cause the computing platform to: identify, based onenterprise information, additional changes to be made, whereinidentifying the plurality of storage locations at which the documentsthat are affected by the document change request are located is furtherbased on the additional changes.
 19. The method of claim 18, wherein theenterprise information indicates one or more of: an enterprise policychange, an enterprise name change, or a change in enterprise personnel.20. One or more non-transitory computer-readable media storinginstructions that, when executed by a computing platform comprising atleast one processor, a communication interface, and memory, cause thecomputing platform to: receive, from a user device, a document changerequest; authenticate authority of a user of the user device to performthe document change request; based on authenticating the authority ofthe user of the user device to perform the document change request,identify a plurality of storage locations at which documents that areaffected by the document change request are located; access thedocuments at each of the plurality of storage locations; scan thedocuments to identify locations, within the documents, of changes to bemade, wherein scanning the documents comprises identifying the locationsbased on one or more enterprise-adopted change tags; write the changesto the documents at the identified locations based on the one or moreenterprise-adopted change tags; embed, in the documents, a timestampcorresponding to implementation of the changes and a signature of theuser; and send, to the user device, a change notification, indicatingthat the document change request has been completed, and one or morecommands directing the user device to display the change notification,wherein sending the one or more commands directing the user device todisplay the change notification causes the user device to display thechange notification and information associated with the one or moreenterprise-adopted change tags.